# -*- coding: utf-8 -*-
# @File:     chat.py
# @Author:
# @DateTime: 2025/10/24/11:00

from pydantic import BaseModel, Field
from typing import Optional, Union, Any, List, Dict


class CreateDialog(BaseModel):
    dialog_uid: str = Field(description='对话ID')
    user_id: int = Field(description='用户ID')
    agent_type: Optional[str] = Field(default='Agent', description='对话Agent类型')


class CreateDialogHistory(BaseModel):
    dialog_id: int = Field(description='对话ID')
    role: str = Field(description='用户ID')
    content: Optional[str] = Field(default='', description='消息内容')


class ChatReqData(BaseModel):
    user_input: str = Field(description='用户输入')
    dialog_uid: Optional[str] = Field(default=None, description='对话ID')


class RAGChatReqData(BaseModel):
    user_input: str = Field(description='用户输入')
    dialog_uid: Optional[str] = Field(default=None, description='对话ID')
    file_list: Optional[List[int]] = Field(default=None, description='文件ID列表')


class ChatResData(BaseModel):
    data: str = Field(description='数据')